/*======================================================
calendar-styles.css
======================================================
0. GENERAL
1. COLOURS
2. HEADER
3. BUTTON STYLES
4. CALENDAR DROP DOWN PANELS
5. CALENDAR ACTIVITY BARS COMMON STYLES
6. CALENDAR COMMON STYLES
7. CALENDAR MONTHLY SPECIFIC STYLES
8. CALENDAR WEEKLY SPECIFIC STYLES
9. CALENDAR LIST
10. CALENDAR DETAILS PAGE
11. POPOVER TOOLTIPS
12. RESPONSIVE CALENDAR
13. PRINT STYLES
===================================================== */


/*======================================================
0. GENERAL
===================================================== */

.popover.popover-wide.fade.top .popover-content {
	Overflow: auto;
	Padding-right: 30px;
	max-height: 255px;
}

@media (min-width: 992px) {
	.popover.popover-wide.fade.top .popover-content {
		max-height: 350px;
	}
}

#CalendarTemplate {
	font-family: “Roboto”, “Helvetica Neue”, Helvetica, Arial, sans-serif;
	font-size: 16px;
}

[data-toggle^="collapse"] {
	cursor: pointer;
}

h1 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 2.75rem;
	font-weight: 300;
}

h2 i {
	float: right;
	font-size: 1rem;
}

@media (min-width: 768px) {
	.sm-text-right {
		text-align: right;
	}
}

@media (max-width: 767px) {
	.sm-text-right {
		margin-top: 8px;
	}
}

.calendar-nav .col-sm-6.calendar-title {
	width: 35%;
}

.calendar-nav .col-sm-6.sm-text-right {
	width: 65%;
}

@media (max-width: 900px) {
	.calendar-nav .col-sm-6.calendar-title {
		width: 100%;
		margin-bottom: 10px;
		text-align: center;
	}

	.calendar-nav .col-sm-6.sm-text-right {
		width: 100%;
		text-align: center;
	}
}

/*======================================================
1. COLOURS
===================================================== */


/* category bar colors */

.calendar-bar-color-0 {
	background-color: #2b387e;
}

.calendar-bar-color-1 {
	background-color: #2b387e;
}

.calendar-bar-color-2 {
	background-color: #2a7a83;
}

.calendar-bar-color-3 {
	background-color: #a9632a;
}

.calendar-bar-color-4 {
	background-color: #9C27B0;
}

.calendar-bar-color-5 {
	background-color: #696323;
}

.calendar-bar-color-6 {
	background-color: #5367da;
}

.calendar-bar-color-7 {
	background-color: #00512f;
}

.calendar-bar-color-8 {
	background-color: #d4cd22;
}

.calendar-bar-color-9 {
	background-color: #2ac0c9;
}

.calendar-bar-color-10 {
	background-color: #c71212;
}

.calendar-bar-color-11 {
	background-color: #c121cf;
}

.calendar-bar-color-12 {
	background-color: #de4f21;
}

.calendar-bar-color-13 {
	background-color: #561aa3;
}

.calendar-bar-color-disabled {
	background-color: #ddd;
}


/* header color */

.calendar-main-wrapper .calendar-header,
.calendar-main-wrapper .calendar-list-header,
.calendar-main-wrapper .calendar-details-header {
	background-color: #b6d99f;
}


/* sub header and details page panel color */

.calendar-main-wrapper .calendar-list-subHeading,
.calendar-main-wrapper .detailsContent,
.calendar-main-wrapper .detailsContact {
	background-color: #e2fcd1;
}

.calendar-main-wrapper .header-calendar-container {
	margin-top: 1rem;
}

	.calendar-main-wrapper .header-calendar-container .breadcrumb {
		margin: .5rem 0 0;
		color: black;
		background: none;
		border-radius: 0;
		border-top: 1px solid #a7a7a7;
	}

		.calendar-main-wrapper .header-calendar-container .breadcrumb a {
			color: inherit;
		}

@media (min-width: 768px) {
	.calendar-main-wrapper .header-calendar-container {
		width: 96%;
		max-width: 1250px;
	}
}


/*======================================================
3. BUTTON STYLES
===================================================== */

.calendar-main-wrapper .btn {
	text-shadow: none !important;
	border: none !important;
	box-shadow: none !important;
}

	.calendar-main-wrapper .btn .icon {
		width: .5rem;
		height: auto;
	}

		.calendar-main-wrapper .btn .icon.pull-left,
		.calendar-main-wrapper .btn .icon.pull-right {
			margin-top: 3px;
		}

	.calendar-main-wrapper .btn:focus:not(.calendar-main-wrapper .btn-link),
	.calendar-main-wrapper .btn:hover:not(.calendar-main-wrapper .btn-link) {
		color: black;
		border-color: transparent !important;
		box-shadow: inset 0 0 99px rgba(0, 0, 0, .1);
	}

.calendar-main-wrapper .btn-default {
	color: black;
	background: #e8e7e7;
}

	.calendar-main-wrapper .btn-default:focus,
	.calendar-main-wrapper .btn-default:hover {
		background: #e8e7e7;
	}

.calendar-main-wrapper .btn-info {
	color: black;
	background: #8fc56b;
}

	.calendar-main-wrapper .btn-info:focus,
	.calendar-main-wrapper .btn-info:hover {
		background: #8fc56b;
	}

.calendar-main-wrapper .btn-success {
	color: white;
	background: #00502f;
}

	.calendar-main-wrapper .btn-success:focus,
	.calendar-main-wrapper .btn-success:hover {
		color: white !important;
		background: #00502f;
	}

@media (max-width: 535px) {
	.calendar-main-wrapper .btn-drop-buttons {
		font-size: 1em;
		height: 30px;
		padding: 5px 4px;
	}
}


/*======================================================
4. CALENDAR DROP DOWN PANELS
===================================================== */


/* Uses Bootstrap defaults */


/*======================================================
5. CALENDAR ACTIVITY BARS COMMON STYLES
===================================================== */

.calendar-main-wrapper .calendar-bar-transparent {
	height: 28px;
	margin: 0 2px 2px 2px;
}

.calendar-main-wrapper .calendar-bar-1day,
.calendar-main-wrapper .calendar-bar-2day,
.calendar-main-wrapper .calendar-bar-3day,
.calendar-main-wrapper .calendar-bar-4day,
.calendar-main-wrapper .calendar-bar-5day,
.calendar-main-wrapper .calendar-bar-6day,
.calendar-main-wrapper .calendar-bar-7day {
	color: white;
	font-size: 0.9em;
	font-weight: 400;
	text-align: left;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, .4);
	margin: 0 2px 2px;
	border-radius: 3px;
	cursor: pointer;
	white-space: nowrap;
}

.calendar-main-wrapper .calendar-bar-2day {
	width: 198.5%;
}

.calendar-main-wrapper .calendar-bar-3day {
	width: 298.5%;
}

.calendar-main-wrapper .calendar-bar-4day {
	width: 399.5%;
}

.calendar-main-wrapper .calendar-bar-5day {
	width: 500%;
}

.calendar-main-wrapper .calendar-bar-6day {
	width: 600.5%;
}

.calendar-main-wrapper .calendar-bar-7day {
	width: 701%;
}


/*======================================================
6. CALENDAR COMMON STYLES
===================================================== */

.calendar-main-wrapper .calendar-nav {
	margin-bottom: .5rem;
}

.calendar-main-wrapper .calendar-title h2 {
	display: inline-block;
	margin: 0;
	font-size: 1.875em;
	font-weight: 300;
	line-height: 1.25;
	vertical-align: middle;
}

.calendar-main-wrapper .calendar-today {
	background-color: #e7f4de;
	box-shadow: inset 0 0 .5rem rgba(0, 0, 0, .1);
}

.calendar-container aside section {
	margin-bottom: 1.5em;
	padding: 1.5em;
	border: solid 1px #a7a7a7;
}

	.calendar-container aside section h2 {
		margin-top: 0;
		margin-bottom: 0;
		font-size: 20px;
		font-weight: normal;
	}

		.calendar-container aside section h2[data-toggle^="collapse"] {
			background-image: url('/Resources/img/Richmond Hill/icon-chevron-up.svg');
			background-position: right center;
			background-repeat: no-repeat;
			background-size: 1rem auto;
			cursor: pointer;
			padding-right: 20px;
		}

			.calendar-container aside section h2[data-toggle^="collapse"][aria-expanded^="false"] {
				background-image: url('/Resources/img/Richmond Hill/icon-chevron-down.svg');
			}

.calendar-container aside .btn {
	display: block;
	margin-bottom: 1.5em;
	padding-right: 1.5rem;
	text-align: left;
	/*background-image: url('/Resources/img/Richmond Hill/icon-chevron-right.svg');*/
	background-position: right .5rem center;
	background-repeat: no-repeat;
	background-size: auto 1rem;
}

.calendar-main-wrapper .calendar-monthly,
.calendar-main-wrapper .calendar-weekly {
	border-left: 1px solid #BEC3CF;
}

.calendar-main-wrapper .calendar-container .day {
	border-right: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
}

.calendar-main-wrapper .calendar-header {
	padding: 10px;
	min-height: 42px !important;
	text-align: center !important;
	font-weight: 700;
	color: black;
	border-right: 1px solid #a8c893;
	border-bottom: 1px solid #BEC3CF;
	border-top: 1px solid #BEC3CF;
}

.calendar-main-wrapper .calendar-last-column {
	border-right: 1px solid #BEC3CF !important;
}

.calendar-main-wrapper .calendar-last-row {
	border-bottom: 1px solid #BEC3CF;
}

.calendar-main-wrapper .calendar-date {
	padding: 6px 8px 4px 0;
	display: block;
}

.calendar-main-wrapper .calendar-bar-text {
	display: inline-block;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin: 4px;
}

.calendar-main-wrapper .calendar-bar-time {
	font-weight: bold;
}

.categories .checkbox {
	border-radius: 4px;
	overflow: hidden;
}

	.categories .checkbox label {
		display: block;
		margin-left: 2rem;
		padding: 1rem .5rem;
		line-height: 1.25;
		background-color: #e8e7e7;
	}

	.categories .checkbox input {
		margin-top: 0;
		margin-left: -2rem !important;
		width: 1rem;
		height: 1rem;
		background-color: white;
		border-radius: 2px;
		-webkit-appearance: none;
	}

		.categories .checkbox input:checked {
			background-image: url('/Resources/img/Richmond Hill/icon-check.svg');
			background-position: center center;
			background-repeat: no-repeat;
			background-size: .75rem;
		}

.categories .select-all {
	display: inline-block;
	margin-top: .5rem;
	font-size: .75rem;
}

.update-notice {
	position: fixed;
	padding: 1rem;
	width: 100%;
	bottom: 0px;
	text-align: center;
	background: #b6d99f;
	box-shadow: 0 0 1em rgba(0, 0, 0, .15);
	z-index: 9999;
}

@media (min-width: 768px) {
	.calendar-main-wrapper .calendar-container {
		width: 96%;
		max-width: 1250px;
	}
}


/*======================================================
7. CALENDAR MONTHLY SPECIFIC STYLES
===================================================== */

.calendar-main-wrapper .calendar-monthly .row {
	margin-right: 0;
	margin-left: 0;
}

.calendar-monthly:focus {
	outline: #ff0000 dotted thin;
}

.calendar-main-wrapper .calendar-container .calendar-monthly .day {
	display: inline-block;
	float: left;
	width: 14.28571428571429%;
	font-weight: bold;
	text-align: right;
	min-height: 120px;
}

.calendar-main-wrapper .calendar-monthly .calendar-bar-1day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-2day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-3day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-4day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-5day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-6day,
.calendar-main-wrapper .calendar-monthly .calendar-bar-7day {
	position: relative;
	height: 28px;
}

.calendar-main-wrapper .calendar-disabled {
	color: #666;
	background: #F7F7F7;
	border-right: 1px solid #ebebeb;
}

.calendar-main-wrapper .calendar-monthly .calendar-bar-end .calendar-bar-text {
	bottom: -2px;
}

@media (max-width: 767px) {
	.calendar-block {
		display: none;
	}
}


/*======================================================
8. CALENDAR WEEKLY SPECIFIC STYLES
===================================================== */

#toggle-24-hour {
	clear: both;
	margin-top: .5rem;
}

.calendar-main-wrapper .calendar-weekly {
	min-width: 767px;
}

	.calendar-main-wrapper .calendar-weekly .row {
		margin-right: 0;
		margin-left: 0;
	}

	.calendar-main-wrapper .calendar-weekly:focus {
		outline: #ff0000 dotted thin;
	}

.calendar-main-wrapper .calendar-container .calendar-weekly .week-odd {
	background: #F7F7F7
}

.calendar-main-wrapper .calendar-container .calendar-weekly .calendar-today {
	background-color: #e7f4de;
	box-shadow: none;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .week-odd .calendar-today {
	background: #e7f4de;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .day {
	border-right: 2px solid #e5e5e5;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .calendar-time.day {
	display: inline-block;
	float: left;
	width: 6.666666666666667%;
	min-height: 32px;
	text-align: center;
	font-size: 1.375em;
	font-weight: bold;
	padding-top: 6px;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .calendar-time .meridiem {
	font-size: .75em;
	display: inline-block;
	position: relative;
	bottom: 4px;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .day {
	display: inline-block;
	float: left;
	width: 13.33333333333333%;
	min-height: 30px;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .week-all-row .day {
	border-bottom: 1px solid #F3F3F3;
}

.calendar-main-wrapper .calendar-container .calendar-weekly .week-all-last-row .day {
	border-bottom: 2px solid #CCC;
}

.calendar-main-wrapper .calendar-weekly .calendar-bar-1day,
.calendar-weekly .calendar-bar-2day,
.calendar-weekly .calendar-bar-3day,
.calendar-weekly .calendar-bar-4day,
.calendar-weekly .calendar-bar-5day,
.calendar-weekly .calendar-bar-6day,
.calendar-weekly .calendar-bar-7day {
	height: 46px;
	margin: 2px;
}

.calendar-main-wrapper .calendar-weekly .calendar-bar-text {
	font-weight: bold;
	bottom: 1px;
}

.calendar-main-wrapper .calendar-weekly .calendar-bar-time {
	font-weight: normal;
	font-size: 1em;
}

.calendar-main-wrapper .week-show-all {
	margin-top: 50px;
	text-align: center;
}


@media (min-width: 768px) {
	.show-only-on-mobile {
		display: none !important;
	}
}

@media (max-width: 767px) {
	#toggle-24-hour {
		margin-top: 8px;
		display: block;
		width: 150px;
	}

	.calendar-nav-mobile-gage {
		display: none;
	}

	.hide-from-mobile {
		display: none !important;
	}

	.show-only-on-mobile {
		display: block !important;
	}
}


/*======================================================
9. CALENDAR LIST
===================================================== */

.list-block {
	display: none;
}

.calendar-main-wrapper .calendar-list-container .row {
	margin-right: 0;
	margin-left: 0;
}

.calendar-main-wrapper .calendar-list-header {
	padding: .5rem 0;
	font-weight: 700;
}

.calendar-main-wrapper .calendar-list-subHeading {
	padding: .5rem 15px 0;
}

.calendar-main-wrapper .results-showing {
	font-size: .75em;
	font-weight: 300;
	white-space: nowrap;
}

.calendar-main-wrapper .calendar-list-date {
	text-align: right;
}

.calendar-main-wrapper .calendar-list-legend {
	display: inline-block;
	margin: 0 .5rem .5rem;
	padding: .25rem .5rem;
	color: #5c5c5c;
}

.calendar-main-wrapper .calendar-list-list,
.calendar-main-wrapper .calendar-list-disabled {
	padding: 18px 20px;
	border-bottom: 1px solid #ccc;
}

.calendar-main-wrapper .calendar-list-disabled {
	background: #F7F7F7;
}

.calendar-main-wrapper .calendar-list-list .col-sm-1 {
	padding: 0;
}

.calendar-main-wrapper .calendar-list-calendar-wrapper {
	width: 88px;
	float: left;
}

.calendar-main-wrapper .calendar-list-calendar {
	text-align: center;
	width: 68px;
	height: 68px;
	background-color: #F7F7F7;
	border: 1px solid #CCC;
	border-radius: 3px;
	overflow: hidden;
}

	.calendar-main-wrapper .calendar-list-calendar span {
		font-size: 2em;
		font-weight: 700;
		line-height: 1.25;
		text-align: center;
		color: #5c5c5c;
		display: inline-block;
	}

.calendar-main-wrapper .calendar-list-calendarDate {
	font-size: 1.5em;
	font-weight: 700;
	color: white;
	width: 66px;
	height: 30px;
	border-bottom: solid 1px #ccc;
	border-radius: 0;
}

.calendar-main-wrapper .calendar-list-info {
	margin-left: 88px;
}

.calendar-main-wrapper .calendar-list-title {
	font-weight: 700;
	font-size: 1.286em;
	color: #5c5c5c;
	overflow: hidden;
}

.calendar-main-wrapper .calendar-list-disabled .calendar-list-title {
	padding-top: 24px;
}

.calendar-main-wrapper .calendar-list-time,
#calendar-list-location {
	font-weight: 700;
	color: #5c5c5c;
	overflow: hidden;
}

.calendar-main-wrapper .calendar-list-content {
	color: #5c5c5c;
}

@media (max-width: 767px) {
	.calendar-main-wrapper .calendar-list-header {
		margin: 0;
		text-align: center;
	}

	.calendar-main-wrapper .calendar-list-date {
		text-align: center;
	}

	.calendar-main-wrapper .calendar-list-calendar {
		width: 10px;
		border: none;
		border-right: 0;
	}

	.calendar-main-wrapper .calendar-list-calendarDate {
		width: 10px;
		height: 68px;
		text-indent: -9999em;
		outline: 0;
		border-radius: 3px;
	}

	.calendar-main-wrapper .calendar-list-info {
		margin-left: 30px;
	}

	.calendar-main-wrapper .calendar-list-calendar span {
		display: none;
	}

	.calendar-main-wrapper .calendar-list-calendar-wrapper {
		width: 30px;
	}
}

@media (max-width: 767px) {
	.list-block {
		display: block;
	}
}

@media (max-width: 535px) {
	.calendar-nav .btn-success {
		width: 32%;
		margin-top: 8px;
	}

	a.btn.btn-default.accordion-toggle {
		width: 100%;
	}

	.accordion-toggle + .btn-success {
		margin-left: 4px;
	}
}


/*======================================================
10. CALENDAR DETAILS PAGE
===================================================== */

.calendar-main-wrapper .calendar-details-container .row {
	margin-right: 0;
	margin-left: 0;
}

.calendar-main-wrapper .calendar-details-header {
	padding: 11px 10px 8px 10px;
}

	.calendar-main-wrapper .calendar-details-header h2 {
		font-size: 1.429em;
		font-weight: 700;
		margin: 0;
		display: inline-block;
	}

	.calendar-main-wrapper .calendar-details-header .pull-left {
		padding-top: 5px;
	}

	.calendar-main-wrapper .calendar-details-header .pull-right {
		position: relative;
	}

.calendar-main-wrapper .contentFull {
	width: 100%;
}

.calendar-main-wrapper .contentLeft {
	width: 75%;
	float: left;
	padding-right: 5px;
}

.calendar-main-wrapper .detailsContent {
	padding: 15px;
	height: calc(100% + 5px);
	min-height: 300px;
}

.calendar-main-wrapper .contentRight {
	width: 25%;
	float: right;
	margin-top: 5px;
}

.calendar-main-wrapper .detailsContact {
	padding: 15px;
	height: calc(100% - 45px);
}

.calendar-main-wrapper .sectionHeader {
	font-weight: 700;
	font-size: 1.286em;
	overflow: hidden;
}

.calendar-main-wrapper .socialButton {
	display: inline-block;
	margin-left: 5px;
}

	.calendar-main-wrapper .socialButton img {
		display: block;
		width: 18px;
		height: 18px;
	}

.calendar-main-wrapper .noMarginLeft {
	margin-left: 0 !important;
}

.calendar-main-wrapper .mapContainer {
	margin-top: 20px;
	margin-bottom: 5px;
}

.calendar-main-wrapper .map {
	height: 400px;
	overflow: hidden;
}

@media (max-width: 767px) {
	.calendar-main-wrapper .calendar-details-container .contentLeft {
		width: 100%;
		padding-right: 0;
	}

	.calendar-main-wrapper .calendar-details-container .contentRight {
		width: 100%;
		padding-left: 0;
	}

	.calendar-main-wrapper .calendar-details-header {
		margin: 0;
		text-align: center;
	}
}

@media (min-width: 768px) {
	.calendar-main-wrapper .calendar-details-container {
		width: 96%;
	}
}

@media (min-width: 1300px) {
	.calendar-main-wrapper .calendar-details-container {
		max-width: 1250px;
		width: 96%;
	}
}


/*======================================================
11. POPOVER TOOLTIPS
===================================================== */

.popover {
	max-height: 400px;
	max-width: 500px;
	overflow: auto;
}

.popover-title {
	padding: 8px 45px 8px 14px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.popover .popover-title button.close {
	position: relative;
	right: -30px;
	top: -10px;
}

@media (max-width: 991px) {
	.popover {
		max-height: 300px;
		max-width: 300px;
	}
}

.calendar-main-wrapper #calendar-popover-title,
.calendar-main-wrapper #calendar-popover-content {
	display: none;
}


/*======================================================
12. Responsive Calendar
===================================================== */

.calendar-main-wrapper .calendar-responsive-containerhead {
	padding: .5em;
	background: #eaeaea;
	border: solid 1px #ccc;
	margin-top: 30px;
}

.calendar-main-wrapper .calendar-responsive-container {
	max-width: 100%;
	padding: 20px;
	margin-bottom: 30px;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
	border: solid 1px #ccc;
}


/*======================================================
13. Print Styles
===================================================== */

@media print {
	.calendar-container aside,
	.calendar-nav .btn,
	#view-options {
		display: none;
	}

	.calendar-monthly .row,
	.calendar-list-list {
		page-break-inside: avoid;
	}
}
